Hive通过

您所在的位置:网站首页 hive sql 变量 Hive通过

Hive通过

#Hive通过| 来源: 网络整理| 查看: 265

       有时候我们需要从Hive中获取需要的数据进行代码的编写,这就需要我们将查询到的语句输出到文档中,我们可以使用-e这个参数,例如:

hive -e 'select * from area where code=202020' >> /root/files/a.csv

       但是有时候sql语句会异常复杂或者语句较多,这个时候我们可以使用-f参数,将所有的sql语句写到一个文件中,然后Hive调用这个文件。例如:将sql语句存放到a.sql中,然后执行如下的命令

hive -f ./a.sql >> /root/files/a.csv

        不仅如此,在Hive 1.0之后,Hive还支持了参数传递,例如上例中的code参数,如果我们要实现参数传递,可以使用如下的方法:

        a.sql中的sql语句修改为:

select * from area where code='${hiveconf:code}'; 或 select * from area where code='${hivevar:code}';

       Hive执行命令如下:

hive -hiveconf code=370202 -f a.sql >> /root/files/a.csv 或 hive -hivevar code=370202 -f a.sql >> /root/files/a.csv

注意:Hive支持多参数的传递!如果涉及多个参数,可以使用如下形式:

hive -hiveconf 参数1=参数值1 -hiveconf 参数2=参数值2... -f a.sql >> /root/files/a.csv 或 hive -hivevar 参数1=参数值1 -hivevar 参数2=参数值2... -f a.sql >> /root/files/a.csv

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3